package com.ep.modules.app.controller;

import com.ep.common.annotation.SysLog;
import com.ep.common.utils.PageUtils;
import com.ep.common.utils.R;
import com.ep.common.validator.ValidatorUtils;
import com.ep.modules.app.entity.AppCompilation;
import com.ep.modules.app.service.AppCompilationService;
import java.util.Map;
import org.springframework.beans.factory.annotation.*;
import org.springframework.web.bind.annotation.*;

@RestController
@RequestMapping("/app/compilation")
public class AppCompilationController {
    @Autowired
    private AppCompilationService appCompilationService;

    @GetMapping("/list")
    public R list(Map<String, Object> params) {
        PageUtils page = appCompilationService.queryPage(params);
        return R.ok().put("page", page);
    }

    @GetMapping("/info/{id}")
    public R info(@PathVariable Long id) {
        AppCompilation appcompilation = appCompilationService.getById(id);
        return R.ok().put("appcompilation", appcompilation);
    }

    @SysLog("保存AppCompilation")
    @PostMapping("/save")
    public R save(@RequestBody AppCompilation appcompilation) {
        ValidatorUtils.validateEntity(appcompilation);
        appCompilationService.save(appcompilation);
        return R.ok();
    }

    @SysLog("修改AppCompilation")
    @PostMapping("/update")
    public R update(@RequestBody AppCompilation appcompilation) {
        ValidatorUtils.validateEntity(appcompilation);
        appCompilationService.update(appcompilation);
        return R.ok();
    }

    @SysLog("删除AppCompilation")
    @PostMapping("/delete")
    public R delete(@RequestBody Long[] ids) {
        appCompilationService.deleteBatch(ids);
        return R.ok();
    }
}